import React, { Component, PureComponent } from "react";

// 函数式组件 父传子
function Sun(props) {
  return <div>{props.title}</div>;
}

// 类组件 父传子
class Star extends Component {
  render() {
    return <div>{this.props.title}</div>;
  }
}

// 类组件 父传子
class Moon extends PureComponent {
  render() {
    return <div>{this.props.title}</div>;
  }
}

/* 当父元素没有传递props属性时，子组件可以指定一个默认props属性值来使用。
通过 组件名.defaultProps 来指定 */

Moon.defaultProps = {
  title: "🌙🌙🌙🌙🌙",
};

export default class App extends Component {
  render() {
    return (
      <div>
        <Sun title="☀☀☀☀☀"></Sun>
        <Star title="⭐⭐⭐⭐⭐"></Star>
        <Moon></Moon>
      </div>
    );
  }
}
